package com.atwulidun.visitor14;

import java.util.ArrayList;
import java.util.List;

// 账本类，相当于ObjectStructure
public class AccountBook {
    // 维护一个账单列表
    private List<Bill> bills = new ArrayList<>();

    // 添加账单的方法
    public void addBill(Bill bill) {
        bills.add(bill);
    }

    // 某一个访问者对账单列表里的所有账单进行访问的方法
    public void visitBills(AccountBookViewer accountBookViewer) {
        // 对账单列表进行遍历
        for (Bill bill : bills) {
            bill.accept(accountBookViewer);
        }
    }
}
